package cn.dlust.tt.module.teacher.controller.admin.lessonplans.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import jakarta.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;

@Schema(description = "管理后台 - 教案新增/修改 Request VO")
@Data
public class LessonPlansSaveReqVO {

    @Schema(description = "教案ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "25891")
    private Long planId;

    @Schema(description = "课程ID（外键，指向jy_courses.course_id）", requiredMode = Schema.RequiredMode.REQUIRED, example = "32200")
    @NotNull(message = "课程ID（外键，指向jy_courses.course_id）不能为空")
    private Long courseId;

    @Schema(description = "教案标题", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "教案标题不能为空")
    private String title;

    @Schema(description = "教案内容", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "教案内容不能为空")
    private String content;

    @Schema(description = "创建者")
    private String creator;

    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "创建时间不能为空")
    private LocalDateTime createTime;

    @Schema(description = "更新者")
    private String updater;

    @Schema(description = "更新时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "更新时间不能为空")
    private LocalDateTime updateTime;

}